From 116a3cd20db62aa7f397b305d87c7e6530fe0a8a Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Sat, 14 Oct 2017 11:18:50 +0200 Subject: [PATCH] Define FeatureMap type as an abstraction --- src/cargo/core/mod.rs | 2 +- src/cargo/core/package.rs | 6 +++--- src/cargo/core/summary.rs | 6 ++++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/cargo/core/mod.rs b/src/cargo/core/mod.rs index f6434f773..6b8926756 100644 --- a/src/cargo/core/mod.rs +++ b/src/cargo/core/mod.rs @@ -9,7 +9,7 @@ pub use self::registry::Registry; pub use self::resolver::Resolve; pub use self::shell::{Shell, Verbosity}; pub use self::source::{GitReference, Source, SourceId, SourceMap}; -pub use self::summary::Summary; +pub use self::summary::{FeatureMap, Summary}; pub use self::workspace::{Members, Workspace, WorkspaceConfig, WorkspaceRootConfig}; pub mod source; diff --git a/src/cargo/core/package.rs b/src/cargo/core/package.rs index f3ce2eaf2..990144254 100644 --- a/src/cargo/core/package.rs +++ b/src/cargo/core/package.rs @@ -1,5 +1,5 @@ use std::cell::{Ref, RefCell}; -use std::collections::{BTreeMap, HashMap}; +use std::collections::HashMap; use std::fmt; use std::hash; use std::path::{Path, PathBuf}; @@ -10,7 +10,7 @@ use toml; use lazycell::LazyCell; use core::{Dependency, Manifest, PackageId, SourceId, Target}; -use core::{SourceMap, Summary}; +use core::{FeatureMap, SourceMap, Summary}; use core::interning::InternedString; use util::{internal, lev_distance, Config}; use util::errors::{CargoResult, CargoResultExt}; @@ -39,7 +39,7 @@ struct SerializedPackage<'a> { source: &'a SourceId, dependencies: &'a [Dependency], targets: &'a [Target], - features: &'a BTreeMap>, + features: &'a FeatureMap, manifest_path: &'a str, } diff --git a/src/cargo/core/summary.rs b/src/cargo/core/summary.rs index db2545d44..1081b5d6c 100644 --- a/src/cargo/core/summary.rs +++ b/src/cargo/core/summary.rs @@ -21,7 +21,7 @@ pub struct Summary { struct Inner { package_id: PackageId, dependencies: Vec, - features: BTreeMap>, + features: FeatureMap, checksum: Option, links: Option, } @@ -110,7 +110,7 @@ impl Summary { pub fn dependencies(&self) -> &[Dependency] { &self.inner.dependencies } - pub fn features(&self) -> &BTreeMap> { + pub fn features(&self) -> &FeatureMap { &self.inner.features } pub fn checksum(&self) -> Option<&str> { @@ -158,3 +158,5 @@ impl PartialEq for Summary { self.inner.package_id == other.inner.package_id } } + +pub type FeatureMap = BTreeMap>; -- 2.30.2